package semantico;

public interface ISemantico {
	public void programaIni(String nomePrograma);

	public void programaFim();

	public void declaraVariavel(String str);

	public void atribuicao(String str, Object valor);

	public void impressaoVariavel(String str);

	public void impressaoValor();

	public void condicaoInicio(Boolean b);

	public void condicaoEntao();

	public void condicaoSenao();

	public void condicaoFim();

	public void numero(Integer num);

	public void somar();

	public void subtrair();

	public void dividir();

	public void multiplicar();

	public void fimAnalise();

	public void classeIni(String nomeClasse, String tipo);

	public void classeFim();

	public void declaraAtributo(String str, String visibilidade);

	public void inicioMetodo(String str, String tipo, String retorno);

	public void fimMetodo();

	public void declaraObjeto(String str, String classe);

	public void instanciacao(String str, String nomeClasse);

	public void construtorPadrao(String nomeClasse);

	public void retornoMetodo(String nomeAtributo);

	public void corpoMain();
	
	public void chamaMetodoGet(String nomeObjeto, String nomeMetodo);

	public void chamaMetodo(String objeto, String metodo);
}
